/*
*
* 版权所有 Copyleft(c) 2005
* 刘炯个人工作室 Sharp-Mark Personal Studio
*
* 允许自由使用，复制，修改，传播和贩卖此源程序及其文档，而不必支付任何费用。
* 以上的版权信息必须出现在每一份复制品中。同时这份版权信息和许可声明
* 也必须出现在支持文档中。刘炯个人工作室不对此软件适于那种具体
* 用途做出任何阐述。此代码只作为代码本身提供对其品质不做任何保证。
*
*/

// ChildView.h : CChildView 类的接口
//
#pragma once
#include "stdafx.h"

class CChildView : public CWnd
{
// 构造
public:
	CChildView();

// 属性
public:

// 操作
protected:
	void DrawPattern(CPaintDC& dc);
	void SetupScene();
	void InitVar();

// 私有成员
protected:
	CCube<float> _cube;				// 要旋转的立方体
	CMatrix<float> _origin;			// 物体坐标和观察坐标的关系矩阵
	float _distance;				// 投影中心到原点的距离
	int _cycle;						// 旋转一周过程中，已经旋转的次数；同时表示需要旋转角度的倍数
	UINT_PTR _timer;				// Timer;
	int _maxcycle;					// 旋转一周的总次数


// 重写
protected:
	virtual BOOL PreCreateWindow(CREATESTRUCT& cs);

// 实现
public:
	virtual ~CChildView();

	// 生成的消息映射函数
protected:
	afx_msg void OnPaint();
	DECLARE_MESSAGE_MAP()
public:
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnTimer(UINT nIDEvent);
	afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
};

